package com.yqzl.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yqzl.util.DataUtils;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.util.StringUtils;

import java.util.UUID;

@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("t_user_basic")
public class User {
  //  主键自增
  @TableId(value = "id", type = IdType.AUTO)
  Integer id;
  String uid = UUID.randomUUID().toString();
  String uname;
  String pwd;

  //   下面是映射json 数据的字段
  //  如果你的数据类型是用来在 Controller 或 Service 中传递数据，
//  而在数据库中并不直接存储 Userinfo 对象字段，那应该加上注解忽略它：
  @TableField(exist = false) // 告诉 MyBatis Plus 这个字段不在表中
      Userinfo userinfo;
  //   只做接收数据，不做查询字段
  @TableField(exist = false)
  String captcha;

  public String getCaptcha() {
    return captcha;
  }

  public void setPwd(String pwd) {
    if (StringUtils.hasText(pwd)) {
      this.pwd = DataUtils.md5(pwd.trim());
    } else {
      this.pwd = pwd;
    }
  }

  // 如果前端没有uuid参数自定义生成
  public void setUid(String uid) {
    if (StringUtils.hasText(uid)) {
      this.uid = uid;
    }

  }
}
